Embodiments of the invention generally relate to the field of computer programs and systems, and specifically to the field of computer aided design (CAD), computer-aided engineering (CAE), modeling, and simulation.
A number of systems and programs are offered on the market for the design of parts or assemblies of parts. These so called CAD systems allow a user to construct and manipulate complex three-dimensional models of objects or assemblies of objects. CAD systems thus provide a representation of modeled objects, such as real-world objects, using edges or lines, in certain cases with faces. Lines, edges, faces, or polygons may be represented in various manners, e.g., non-uniform rational basis-splines (NURBS).
These CAD systems manage parts or assemblies of parts of modeled objects, which are mainly specifications of geometry. In particular, CAD files contain specifications, from which geometry is generated. From geometry, a representation is generated. Specifications, geometry, and representations may be stored in a single CAD file or multiple CAD files. CAD systems include graphic tools for representing the modeled objects to the designers; these tools are dedicated to the display of complex objects. For example, an assembly may contain thousands of parts.
The advent of CAD and CAE systems allows for a wide range of representation possibilities for objects. One such representation is a finite element analysis model. The terms finite element analysis model, finite element model, finite element mesh, and mesh are used interchangeably herein. A finite element model typically represents a CAD model, and thus, may represent one or more parts or an entire assembly of parts. A finite element model is a system of points called nodes which are interconnected to make a grid, referred to as a mesh.
Models, such as CAE models, finite element models, and computational fluid dynamics models, amongst others, may be programmed in such a way that the model has the properties of the underlying object or objects that it represents. When, for instance, a finite element model is programmed in such a way, it may be used to perform simulations of the object that it represents. For example, a finite element model may be used to represent the interior cavity of a vehicle, the acoustic fluid surrounding a structure, and any number of real-world objects, including, for example, medical devices such as stents. When a model represents an object and is programmed accordingly it may be used to simulate the real-world object itself. For example, a finite element model representing a stent may be used to simulate the use of the stent in a real-life medical setting.
Further, these simulations can be used to improve on the design of the real-world object that is being simulated. For example, a model of a dynamic system can be used in a simulation to identify a point of failure of the system. In turn, a three-dimensional CAD model that is represented by the model used in the simulation and ultimately represents the real-world object itself, can be improved using the feedback from the simulation. While methodologies exist for performing simulations of models and for improving underlying CAD models, these existing methodologies can benefit from functionality to improve efficiency.